package com.hxd.otc.mvp.login;

import android.content.res.AssetManager;
import android.support.annotation.NonNull;

import com.google.gson.reflect.TypeToken;
import com.hxd.otc.module.login.bean.PhoneCodeBean;
import com.hxd.otc.mvp.base.IBaseCallback;
import com.hxd.otc.utils.DataUtils;
import com.hxd.otc.utils.GsonUtil;

import java.util.List;

/**
 * 包  名 :  com.hxd.otc.mvp.login
 * 类  名 :  PhoneCodeModel
 * 作  者 :  胡庆岭
 * 时  间 :  2018/6/5 15:11
 * 描  述 :  ${电话区号model}
 */
public class PhoneCodeModel {
    private Callback mCallback;

    public interface Callback extends IBaseCallback {
        void phoneCodeResult(List<PhoneCodeBean> data);
    }

    public PhoneCodeModel(@NonNull Callback callback) {
        this.mCallback = callback;
    }

    public void gainPhoneCode(@NonNull final AssetManager manager, @NonNull String path) {
        DataUtils.readAssets(manager, path, new DataUtils.OnReaderBufferResult() {
            @Override
            public void onResult(String json) {
                List<PhoneCodeBean> data = GsonUtil.fromJson(json, new TypeToken<List<PhoneCodeBean>>() {
                }.getType());
                if (mCallback != null) {
                    mCallback.phoneCodeResult(data);
                }

            }
        });
    }
}
